// 背景色
enum background {
  // 去报名
  b1 = 'background:#E6425E;color: #FFFFFF;',
  // b1 = 'background:#4FBEBD;color: #FFFFFF;',
  // 未开始
  b2 = 'background:#E6425E;color: #FFFFFF;',
  // 暂关闭 已结束 报名结束
  b3 = 'background:#EEEEEE;color: #666666;'
}
enum background2 {
  // 已结束  报名结束 未开始
  b1 = 'background: rgba(0, 0, 0, 0.39);',
  // 去报名
  b2 = 'background: rgba(230,66,94,0.39);'
}

// 文字颜色
enum color {
  // 待支付
  c1 = 'color:#F24C55',
  // 待参与
  c2 = 'color:#89D4AA',
  // 已完成
  c3 = 'color:#777777',
  // 已退款
  c4 = 'color:#777777'
}

// 列表状态
const listState = {
  2: '正常',
  3: '暂关闭',
  4: '已报满'
}

const listStatus = {
  5: '已结束',
  6: '报名结束',
  7: '进行中',
  8: '未开始',
  9: '去报名'
}

// 组别状态
const groudState = {
  1: '去报名',
  2: '暂关闭',
  3: '已报满'
}

// 检票状态
const ticketState = {
  1: '去核销',
  2: '已结束'
}

// 订单状态
const orderShowState = {
  0: '待支付',
  1: '已报名',
  2: '已完成',
  3: '已退款'
}

export default function () {
  // 列表状态样式
  const getListStyle = (item: { state: number; status: number }) => {
    // 暂关闭 已结束 报名结束
    if (item.state == 3 || item.status == 5 || item.status == 6) return background.b3
    // 去报名
    else if (item.status == 9) return background.b1
    // 未开始
    else if (item.status == 8) return background.b2
  }

  const getListStyles = (item: { state: number; status: number }) => {
    // 暂关闭 已结束 报名结束 未开始
    if (item.state == 3 || item.status == 5 || item.status == 6 || item.status == 8) return background2.b1
    // 去报名
    else if (item.status == 9) return background.b2
  }

  // 列表状态文字
  const getListText = (item: { state: number; status: number }) => {
    if (item.state == 3 || item.state == 4) return listState[item.state]
    return listStatus[item.status]
  }

  // 组别列表文字
  const getGroudText = (item: { state: number }) => {
    return groudState[item.state]
  }

  // 组别列表样式
  const getGroudStyle = (state: number, status: number, item: { state: number }) => {
    if (state == 2 && listStatus[status] == '去报名') {
      if (groudState[item.state] == '去报名') return background.b1
    }
    return background.b3
  }

  // 检票列表文字
  const getTicketsText = (item: { state: number }) => {
    return ticketState[item.state]
  }

  // 检票样式
  const getTicketsStyle = (item: { state: number }) => {
    if (item.state == 1) return background.b2
    return background.b3
  }

  // 订单颜色
  const getOrderStyle = (item: { show_state: number }) => {
    // 待支付
    if (item.show_state == 0) return color.c1
    // 待参与
    else if (item.show_state == 1) return color.c2
    // 已完成
    else if (item.show_state == 2) return color.c4
    // 已退款
    else if (item.show_state == 3) return color.c4
  }

  // 订单文字
  const getOrderText = (item: { show_state: number }) => {
    return orderShowState[item.show_state]
  }

  return { getListStyle, getListStyles, getListText, getGroudText, getGroudStyle, getOrderStyle, getOrderText, getTicketsText, getTicketsStyle }
}
